I. Technical Field
The present invention relates generally to data processing and, more particularly, to adapting procedure calls to service providers at a server system of a computer framework.
II. Background Information
In a client-services architecture, a client may call a service at a server to interact with the service through the Internet or an intranet. A service is a program that makes itself available over the Internet or an intranet, or locally. Typically, services use a standardized messaging, such as XML (Extensible Markup Language) and SOAP. Moreover, there is usually some type of web mechanism, such as UDDI (or Universal Description, Discovery, and Integration) to locate the service (and its public Application Program Interface (API)). In a computer framework, which is a framework of interconnected computers or processors that includes services (referred to as an “enterprise services framework” (ESF)), a client can call a service from a service provider through an API. The service provider includes software and/or hardware on the computer framework that allows the instantiation of business objects in response to the API call. As used herein, the term “instantiate” means, in an object oriented programming (OOP) environment, an object of a particular class, and, more generally, includes deploying, customizing, running and/or executing an application. As used herein, an “object” means a software bundle of variables (e.g., data) and related methods. For example, in object-oriented programming, an object is a concrete realization (i.e., “instance”) of a class that consists of data and the operations associated with that data. The phrase “business object” refers to a software bundle of variables and related methods that can be used for describing a business process or task. For example, a client can call the API of a service provider through the Internet or intranet, or locally. The API when called instantiates business objects, such as a catalog service provider for listing products from a catalog or a purchasing service provider for allowing the purchase of a product.
However, the service providers and the API are occasionally replaced with another set of service providers and API, such as newer versions of service providers with a corresponding API to carry out substantially the same underlying tasks. The replacement API may require received calls to have a different form. Thus, these replacements of the service providers and the API can result in a miscommunication between the client and the service providers. Thus, it is desirable to seamlessly call procedures from the service providers even when the procedure calls at the service providers may take different forms over time.